import os

# 项目配置类
class Config:
    # 密钥配置 应用密钥，用于会话签名和其他安全操作
    SECRET_KEY = os.environ.get('SECRET_KEY') or 'hard-to-guess-string'

    # 数据库连接URI，使用SQLite作为示例
    SQLALCHEMY_DATABASE_URI = os.environ.get('DATABASE_URL') or 'mysql+pymysql://root:123456@localhost/db_kitchen'

    # 禁用SQLAlchemy的修改跟踪，减少内存使用
    SQLALCHEMY_TRACK_MODIFICATIONS = False

    # 是否开启调试模式（默认关闭，用于生产环境）
    DEBUG = False

    # 跨域配置
    # 支持凭证（如cookies）
    CORS_SUPPORTS_CREDENTIALS = True
    # 允许的源列表，当使用凭证时不能使用通配符
    # 开发环境前端地址和其他可能的前端地址
    CORS_ORIGINS = os.environ.get('CORS_ORIGINS') or ['http://localhost:5173', 'http://127.0.0.1:5173']
    # 允许的HTTP方法
    CORS_METHODS = ['GET', 'POST', 'PUT', 'DELETE', 'OPTIONS']
    # 允许的HTTP头，显式指定常用头部
    CORS_HEADERS = ['content-type', 'Authorization', 'X-Requested-With', 'accept', 'Origin', 'Access-Control-Request-Method', 'Access-Control-Request-Headers']